# 前面学习面向对象过程中，修改类属性都是直接通过类名修改的。如果有些重要属性不想让别人随便修改，
# 或者防止意外修改，该怎么办？
# 为了更好的保存属性安全，即不能随意修改，将属性定义为私有属性，添加一个可调用的方法去访问。
class Person:
    __age=18    #私有类属性：不能在类的外面进行访问的属性
    # 私有属性，可以在类的内部正常访问
    # 可以通过方法设计（setter、getter方法访问/修改私有属性的方法，供外部调用）
    # setter方法一般设计时，需要传参不需要返回值
    def setAge(self,age):
        Person.__age=age
        pass
    # getter设计需要返回值，不需要传参
    def getAge(self):
        return Person.__age
    pass
# print("通过类对象访问属性{}".format(Person.__age))   #类对象不能在类的外部访问私有属性
xm=Person()
# print("通过实例对象访问属性{}".format(xm.__age))    #实例对象不能在类的外部访问私有属性
xm.setAge(22)
print(xm.getAge())